/*
 * Hoja.h
 *
 *  Created on: 19/09/2010
 *      Author: cas
 */

#ifndef HOJA_H_
#define HOJA_H_


#include "Nodo.h"
#include "cLista.h"
#include "DatoHoja.h"


class Hoja: public Nodo {
public:
	tLista<DatoHoja>*	iucsConNumeroDeCubeta;
	int cantidadElementos;

	Hoja();
	Hoja(DatoHoja* dato, int tamanioMaximo);
	void agregarDato(DatoHoja* dato);
	bool haySobreflujo();
	bool haySubflujo();
	void partirHoja(tLista<IUC>* iucs, tLista<Nodo>* nodos);
	Nodo* getNodoDerecho(tLista<Nodo>* nodos);
	Nodo* getNodoIzquierdo(tLista<Nodo>* nodos);
	int getPosicionNodo(tLista<Nodo>* nodos);
	Nodo* getNodoPosicion(tLista<Nodo>* nodos, int posicion);
	DatoHoja* getDatoPosicion(int posicion);
	virtual ~Hoja();
};

#endif /* HOJA_H_ */
